/*
 * NotificationListener.cpp
 *
 * */

#include "NotificationListener.h"

void NotificationListener::conectarAlServer(const char* ip, int puerto) {
	if (this->comunicador.conectar(puerto, ip)) {
		throw MyException("El NotifListener no logró conectarse al servidor\n");
	}
}

void NotificationListener::run() {
	try {

		std::string mensajeRecibido;
		std::string buff("OK");
		while (running) {
			this->comunicador.recibirMensaje(mensajeRecibido);
			this->comunicador.enviarMensaje(buff);
			this->colaNotif.push(mensajeRecibido);
			mensajeRecibido.clear();
		}
	} catch (MyException e) {
		//std::cout << e.what() << std::endl;
		return;
	}
}

void NotificationListener::terminarTrabajo() {
	try {
		running = false;
		this->comunicador.cerrarComunicacion();
	} catch (MyException e) {
		std::cout << e.what() << std::endl;
		return;
	}
}
